package net.zigin.nhi.could.waste.service;

import net.zigin.nhi.could.waste.dto.MaterialBaseDto;
import net.zigin.nhi.could.waste.dto.SysUserStaffDto;
import net.zigin.nhi.could.waste.model.MaterialBase;
import net.zigin.nhi.could.waste.service.BaseService;
import net.zigin.nhi.could.waste.vo.MaterialBaseVo;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/*#################################################################*
# 说明:以下代码通过哲勤代码生成工具自动生成    
# 工具:GeneratorCode
# 作者:mgw1986                                                  
# 生成时间:2021-9-12 21:08:08                                               
##################################################################*/


/**
 *  MaterialBase服务接口类
 * @ClassName: MaterialBaseService
 * @author mgw1986
 * @date 2021-9-12 21:08:08
 * @version V1.0
 */
public interface MaterialBaseService extends BaseService<MaterialBase, String> {

    /**
     * 新增编辑耗材
     * @param materialBaseDto 耗材信息
     * @return 耗材ID
     */
    String saveOrUpdate(MaterialBaseDto materialBaseDto);

    /**
     * 耗材列表
     * @param materialBaseDto 耗材信息
     * @return 耗材列表
     */
    List<MaterialBaseVo> getList(MaterialBaseDto materialBaseDto);

    /**
     * 耗材列表数目
     * @param materialBaseDto 耗材信息
     * @return 耗材列表数目
     */
    Integer getCount(MaterialBaseDto materialBaseDto);

    void exportList(MaterialBaseDto materialBaseDto , HttpServletResponse response);

    void importList(MultipartFile file);

    void downloadTemplate(HttpServletResponse response);

    Boolean judgeRemove(String id);

    void remove(String id);
}
